package fr.afcepf.atod18.restaurants.service;


import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import fr.afcepf.atod18.restaurants.entity.Produit;
import fr.afcepf.atod18.utilitaires.dao.IGenericDao;

@Service
@Transactional
public class ServiceProduit implements IServiceProduit {
	@Autowired
	IGenericDao<Produit> daoProduit;

	@Override
	public void ajouter(Produit produit) {
		daoProduit.save(produit);
	}
	@Override
	public Produit mettreAJour(Produit produit) {
	    return daoProduit.update(produit);
	}
	@Override
	public Produit rechercherParId(int id) {
	    return daoProduit.findOne(id);
	}
	@Override
	public List<Produit> rechercherTout() {
		return daoProduit.findAll();
	}
	@Override
	public void supprimerParId(int id) {
	    daoProduit.deleteById(id);
	}
	@Override
	public void supprimer(Produit produit) {
	    daoProduit.delete(produit);
	}
    @Override
	public void supprimerListe(List<Produit> liste) {
		daoProduit.deleteList(liste);
	}
    @Override
    public List<Produit> rechercherParNom(String nomColonne, String libelle) {
        return daoProduit.findByName(nomColonne, libelle);
    }


    public IGenericDao<Produit> getDaoProduit() {
		return daoProduit;
	}
	public void setDaoProduit(IGenericDao<Produit> daoProduit) {
		this.daoProduit = daoProduit;
	}
}
